1. Field of the Invention
The present invention relates generally to techniques for managing distributed multimedia resources on wide area networks characterized by large bandwidth and resource reservation capabilities, and, more specifically, to a system that provides the ability to map, reserve, monitor, and manage a dynamic plurality of computing and storage resources via a collection of arbitrators, policies and directories.
2. Discussion of the Prior Art
The task of leveraging the increased availability of widely distributed content and resources becomes very important with the proliferation of the next generation of the Internet, e.g., Internet2. The emerging Internet projects address the creation of a leading edge network for a new generation of applications that fully exploit the capabilities of broadband networks. Very high bandwidth and bandwidth reservation will allow materials such as continuous digital video and audio to move from research use to much broader use and include images, audio, and video in a way currently not possible. In such a widely distributed environment, accountable, efficient, and self-regulated management of resources will be desirable and most importantly, necessary.
The driving force behind the movement of Internet to the next generation is the commercialization of rich multimedia content. Digital library collections produced by corporations, entertainment material created by movie studios, and interactive instructional presentations developed by universities are soon to be available over the Internet, thus creating a new and broad source of revenue.
The emerging Internet relies on the bandwidth, which is on the order of several magnitudes larger than current Internet provides. It also alleviates network resource management and QoS control by introducing correspondent reservation and monitoring mechanisms. However, it is clear, that to date, mechanisms for the collective management of multiple media connections that efficiently leverage the sharing of resources across multiple servers in a wide area network are not found.
There is envisioned three major conditions for successful commercialization of those newly arising applications: first, mechanisms need be provided to allow paying users to establish a contract with service providers to reserve required infrastructure components and resources at a mutually agreed price for which providers establish and support a guaranteed quality of service; second, the resources supply would have to be sufficient to meet random changes of the demand, which may be completely unpredictable during architectural studies; and, third, service providers should safely rely on the system for effective security, rights and royalties management, accounting and billing for the consumption of dynamically re-configurable distributed virtual resources.
The current focus of resource management in the today""s Internet, if any, relates to the setup and management of individual and independent media connections to server resources. However, the danger of this approach becomes clear when the presentations reuse multiple primary sources of content. To enforce the necessary quality as well as to control the usage and distribution when reusing multiple sources of content, two approaches are possible. One approach is to copy all content onto a single server (or a cluster of servers) during authoring, and replicating, as necessary, the final result to as many servers according to predicted demand. Primary content providers would then establish copyright charges, based on a priori market analysis. On the positive side, the control of distribution, security, and billing functions become much easier, than in case of distributed content. On the negative, if the demand is estimated incorrectly, the profit is not maximized for either primary or secondary (i.e., reuse) content providers. Finally, the most dangerous problem is that this approach leads to over-engineering of resources while it does not prevent dropout of excessive requests. Such an approach is typical for today""s Internet, because current multimedia content is generally not memory hungry, as compared with emerging multimedia applications.
Another approach would be to reassemble content on a need basis, for both authoring and dissemination. It would allow content to be stored once, but used as many times as necessary, establish charges proportionally to content and resources usage, and alleviate storage demand. However, it requires a system to dynamically manage multiple and frequently heterogeneous resources. In addition, this approach exacerbates security, and resource engineering. A demand for the particular segment can not be predicted at all, because this segment may be used in completely different, even orthogonal applications. Now, if the demand for a single segment can not be met, multiple applications are affected. The latter approach, however, is the only sensible way to be used by future Internet, because from the resource point of view, it is the most economical, and serving a maximum number of users.
Thus, it would be highly desirable to provide a system and method that allows all three major commercialization conditions to be satisfied.
There are a number of publications and patents in the area of QoS-driven resource management. The most of the work has been focused on either the network, as described in U.S. Pat. No. 5,388,097 issued Feb. 7, 1995 to Baugher, M. J. et al., and entitled xe2x80x9cSystem and Method for Bandwidth Reservation for Multimedia Traffic in Communication Networks,xe2x80x9d and U.S. Pat. No. 5,581,703 issued Dec. 3, 1996 to Baugher, M. J. et al, and entitled xe2x80x9cMethod and Apparatus for Reserving System Resources to assure Quality of Servicexe2x80x9d; or, the operating system, such as described in the reference xe2x80x9cAn Architecture Towards Efficient Os Support for Distributed Multimediaxe2x80x9d, Proceedings of ISandT/SPIE Multimedia Computing and Networking Conference ""96, San Jose, Calif., January 1996 by David K. Y. Yau and Simon S. Lam. With the proliferation of multimedia services on Internet, it was soon realized that while IP networks were able to provide a simple, best-effort delivery service, the IP protocol is not suited for use with new real-time applications, such as multimedia streaming, Virtual Reality applications, distributed supercomputing. As a result, new network protocols, such as Resource Reservation Setup Protocol (RSVP) (See, e.g., xe2x80x9cThe Grid: Blueprint for a New Computing Infrastructure,xe2x80x9d Edited by Ian Foster and Carl Kesselman, Chapter 19, pp. 379-503, Morgan Kauffman Publishers, 1999); Real Time Transport Protocol (RTP); Real Time Transport Control Protocol (RTCP) and others, were developed (See, e.g., William Stallings, xe2x80x9cHigh-Speed Networks: TCP/IP and ATM Design Principlesxe2x80x9d, Prentice Hall, 1997; and, I. Busse, B. Deffner, and H. Schulzrinne, xe2x80x9cDynamic QoS Control of Multimedia Applications based on RTPxe2x80x9d, Computer Communications, January 1996), enabling applications to request and negotiate network QoS parameters, such as bandwidth and latency. Deployment of those protocols on the current Internet has not been successful, firstly because it required upgrading all the non-RSVP routers and servers system software. Secondly, even if RSVP were deployed on the current Internet, very limited bandwidth and computing resources would still have been the bottleneck for successful deployment of real-time applications. The current Internet was built on the backbone, enabling cross-country communications on relatively unclogged T3 (45 megabit per second). Proliferation of graphic pages, and streaming audio and video applications depleted those resources quite fast. Even worse, the rate of user""s population growth is considerably higher than newly build network resources.
The National Science Foundation and MCI Corporation, responding to the emerging needs of Internet community has been building a new network, called vBNS (very-high-performance Backbone Network Service). This nationwide network also provides a backbone for the two foundations, university-led effort called Internet 2 and by federal research agencies, called New Generation Internet. The vBNS allows most of the connected institutions to run at 622 million bits per second (OC12). By the year 2000, vBNS is expected to operate at 2.4 gigabits per second (2,400 megabits per second) by the year 2000.
The vBNS system exploits RSVP protocol to support two distinct classes of services: a Reserved Bandwidth Service, i.e. a service with bandwidth commitment, and a traditional best-effort IP service (See, e.g., Chuck Song, Laura Cunningham and Rick Wilder, xe2x80x9cQuality of Service Development in the vBNSxe2x80x9d, MCI Communications Corporation, provided at the URL http://www.vbns.net/presentations/papers/QoSDev/ieeeqos.htm. Still, resource management at the network layer for vBNS is done separately from operating system layer and in isolation from application needs and availability of the end-resources, such as storage and computing resources.
A new breed of high performance applications such as remote surgery, robotics, tele-instrumentation, automated crisis response, digital libraries of satellite data, distance learning via multimedia supported Web sites, enhanced audio, and video, is emerging. However, to accommodate such high performance applications and their continuous media flows, it is not enough to increase or reserve network capacity. These new applications require end-to-end resource reservation and admission control, followed by co-ordination of distributed functions such as: (a) resource scheduling (e.g., CPU, disk, etc.) at the end-system(s), (b) packet scheduling and flow control in the network, and (c) monitoring of the delivered end-to-end quality of service. It is essential that quality of service is configurable, predictable and maintainable system-wide, including the end-system devices, communications subsystem, and networks. Furthermore, all end-to-end elements of distributed systems architecture must work in unison to achieve the desired application level behavior.
Up do date, there has been considerable effort in the development of end-to-end quality of service support. Among them are Heidelberg QoS Model, developed within HeiProject at IBM""s European Networking Center and described in the reference entitled xe2x80x9cHeiRATxe2x80x94Quality of Service Management for Distributed Multimedia Systemsxe2x80x9d, Multimedia Systems Journal, 1996 by Volg, C., Wolf, L., Herrtwich, R. And H. Wittig; an Extended Integrated Reference Model (XRM), developed by COMET group at Columbia University such as described in the reference entitled xe2x80x9cBuilding Open Programmable Multimedia Networksxe2x80x9d, Computer Communications Journal, Vol. 21, No. 8, pp. 758-770, June 1998 by Campbell, A. T., Lazar, A. A., Schulzrinne, H. And R. Stadler; OMEGA end-point architecture, developed as the interdisciplinary research effort in the University of Pennsylvania such as described in the reference entitled xe2x80x9cDesign, Implementation and Experiences of the OMEGA End-Point Architecturexe2x80x9d, Technical Report (MS-CIS-95-22), University of Pennsylvania, May 1995 by Nahrstedt K. And J. Smith; in-serv Architecture which is a contribution of the Internet Engineering Task Force (IETF) such as described in the reference entitled xe2x80x9cA Framework for End-to-End QoS Combining RSVP/Intserv and Differentiated Services,xe2x80x9d Internet Draft, IETF, March 1998 by Bernet Y, et al.; the Quality of Service Architecture QoS-A, developed by A. Campbell, and presenting an integrated framework dealing with end-to-end QoS requirements such as described in the reference entitled xe2x80x9cA Quality of Service Architecturexe2x80x9d, PhD thesis, Lancaster University, January 1996 by Andrew T Campbell. Another reference which analyzes the above mentioned QoS paper is entitled xe2x80x9cA Survey of QoS Architecturesxe2x80x9d, ACM/Springer Verlag, Multimedia Systems Journal, Special Issue on QoS Architecture, Vol. 6, No. 3, pp. 138-151, May 1998 by Aurrecoechea, C., Campbell, A. T. and L. Hauw.
Substantial work has been done by SRI International, developing an End-to-End Resource Management of Distributed Systems (ERDoS), which enables adaptive, end-to-end, scalable resource management of distributed systems such as described in the reference ERDOS QoS Architecture, Technical Report, SRI International, May 1998. An extensible Resource Specification Language (RSL) and the resource management architecture has been implemented within Globus meta-computing toolkit, and used to implement a variety of different resource management strategies such as described in Czajkowski, K., et al., xe2x80x9cA Resource Management Architecture for Metacomputing Systemsxe2x80x9d Proc. IPPS/SPDP ""98 Workshop on Job Scheduling Strategies for Parallel Processing, 1998; and Foster, I., Kesselman, C., xe2x80x9cThe Globus Product: A Status Reportxe2x80x9d Proc. IPPS/SPDP ""98 Heterogeneous Computing Workshop, pp. 4-18, 1998.
While the architectures described in the above-mentioned references are directed resource reservation and management of end-to-end resources, they generally assume a single, even geographically limited network subsystem which provides bounds on delay, errors and meet bandwidth demands, and an operating system which is capable of providing run time QoS guarantees. However, the next generation Internet must be viewed not as only a network of networks, but first and foremost a system of distributed systems. In this paradigm, not only the communication resources, but also the computing and storage servers are shared among many users.
Thus, the architectures mentioned above do not provide a coordinated management of overall system resources as a function of request activities for individual content and computing resources. Consequently, quality of service must be degraded in response to growing volume of requests for such services over and above an established limit. As the above-mentioned architectures focus on providing QoS as requested by application, they do not take an advantage of a possible aggregation of resources due to commonality between user requests for a particular service. For example, it would be desirable to determine commonality for the usage history of a particular multimedia content, e.g., bursts of requests within short time intervals, the proximity of origination addresses of requests, etc. In addition, the architectures described above do not allow for dynamic monitoring and recording of resource consumption for individual services as well as for groups of related services, with the purpose of calculating cost of service for individual clients.
Thus, it would be highly desirable to provide a mechanism capable of providing an adaptive resource management function for distributed resources that is suited for the next generation of Internet.
It is an object of the present invention to provide a system and method for managing multimedia content and server-side resources that exploits the unique characteristics of future computer networked environments.
Particularly, it is an object of the invention to provide a system and method for managing and controlling the distribution, sharing and pooling of resources in an Internet/World Wide Web environment in such a manner that is beneficial, accountable, and seamless to the users who are requesting access to multimedia content.
It is a further objective of the invention to provide a resource management system that self-regulates, according to policies, a plurality of end resources and server-based capabilities.
The present invention is directed to a self-regulated distributed network of system resources, i.e., a xe2x80x9cresource of resourcesxe2x80x9d. Particularly, a distributed system referred to as a Service Control Plane (SCP) performs self-regulating management of distributed resources comprising: a plurality of end resources such as (but not limited to) servers and databases providing access to (multimedia) content and services, a plurality of clients requiring access to content and services, and a plurality of system resources connected by a computer networking environment.
According to the principles of the invention, the service control plane is an intelligent intermediary decision plane for managing and enforcing end-to-end properties in the availability of end resources in a computer networked environment. The service control plane receives stimuli (i.e., application requests) from a plurality of clients desiring to access target multimedia content, for instance, and responds to these with end-to-end mapping recommendations satisfying one or more properties (policies) set in the service control plane. When a client accepts a mapping recommendation, the service control plane guarantees its performance as set forth by the policies used to generate it.
The SCP essentially provides the control and management of the server-side (end) resources which may be characterized as global, i.e., resources dynamically (on-demand) allocated by the system and having a lifetime determined by the system; and local, i.e., resources pre-allocated and presented to the system as possessing a lifetime that is independent of the system. As in any distributed object scheme, the local resource is a resource that is associated and maintained by its originating private provider. A global resource represents an on-demand created resource that is made available at one or more global system providers.
Particularly, the system administrators control the placement of object replicas onto global resources, as well as the ratio of global to local resources for each particular server. The placement of replicas, and ratio of global to local resources may be constant, or changed based on preferences of content owners or service provider.
Global resources may be made available as a function of integrated demand from clients. To satisfy the requests of clients requesting access to target content, global server-side resources are allocated. A plurality of intermediary system resources (such as directories and resource monitors) enable the management of such requests for target content in a process referred to as mapping, brokering and negotiation.
According to one aspect of the disclosure, the capacity of global resources is dynamic and performed when deemed necessary based on the analysis of utilization patterns of target content and replicas by pluralities of clients. The system dynamically shapes capacity by (a) controlling the number of replicas associated with an object and (b) the placement of these replicas.
According to another aspect of the invention, the SCP additionally controls the mapping of the client requests. Particularly, methods are provided to dynamically shape demand for an object based on criteria such as arrival time, incoming geography, and costs requirements. In particular, the present invention characterizes future demand for an object based on aggregation and forecasting of past demand for such object. This aspect of the invention is described in conjunction with the capacity shaping mechanism. The SCP coordinates the dynamic placement of replicas of target content across global resources.
Still another aspect of the invention relates to management of the end-resources. A skilled artisan will appreciate that today resource management is not feasible in part because interfaces to end systems are closed and proprietary. According to the system and method of the invention, interfaces and mechanisms are provided that facilitate resource monitoring, setup, and management.
To make such resource management a possibility, the SCP allows an end-resource to be both globally and locally managed with global components managed by the system, and local components self-managed by the resource.
Herein a resource is referred to as a server-based capability. In the present invention, a server is represented in terms of capabilities which represents a heterogeneous media unit streaming capacity. Each capability may be assigned to local or global management, with the service control plane permitting the management of global capabilities while the server itself manages local capabilities. A server administrator allocates the ratio of global and local capabilities at a server. Resource capabilities need not be uniform. However, capabilities need to be normalized and consequently, the resource is viewed as a set of storage and service bins that represent capabilities for provisioning content. A service bin models capabilities in a resource and comprises one slot for each different capability tuple. A server manages a storage bin which is used for each content. Content is associated with capabilities via the binding of a storage bin with a service bin. However, because not all content is identical, it is necessary to obtain a worst resource bound for content. Each server is assigned content that is local and/or replicated. Replicated content is globally maintained while local content is referred to as original content.
Binding a storage bin to a service bin forms a streaming connectionxe2x80x94the binding being evaluated at a quality of service. The service bin is associated with resource requirements needed to stream content in such resolution. Each content is associated with a resource profile. For constant bit rate, this is possible in terms of bandwidth at the expense of computation. For variable bit rate, it is necessary to obtain a performance envelope for the worst case. The resource profile is used to facilitate the evaluation of the binding.
Advantageously, the system and method of the invention provides important enhancements to resource management architectures not yet available today: 1) it provides a highly available distributed decision capability that may be used to achieve and enforce properties over the usage, as well as patterns of usage, of end-resources; 2) it creates a resource monitoring point with respect to the performance of multiple end resources and clients and their usage patterns so as to provide parameters on where, when, and how to satisfy a request; and 3) it provides an insertion point that can be used for dynamic insertion of both resources and content in a manner transparent to clients.